package cn.iocoder.yudao.module.eval.dal.dataobject.candidate;

import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.time.LocalDate;

/**
 * 参评人员证书信息 DO
 *
 * @author 芋道源码
 */
@TableName("eval_candidate_certificates")
@KeySequence("eval_candidate_certificates_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EvalCandidateCertificateDO extends TenantBaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long id;
    
    /**
     * 参评人员ID，关联eval_candidate_info表
     */
    private Long candidateInfoId;
    
    /**
     * 证书类型：1-职业资格证书，2-技能等级证书，3-专项能力证书，4-培训证书，5-其他证书
     */
    private Integer certificateType;
    
    /**
     * 证书名称
     */
    private String certificateName;
    
    /**
     * 证书编号
     */
    private String certificateNumber;
    
    /**
     * 发证机构
     */
    private String issueOrganization;
    
    /**
     * 发证日期
     */
    private LocalDate issueDate;
    
    /**
     * 有效期至
     */
    private LocalDate validUntil;
    
    /**
     * 证书等级
     */
    private String certificateLevel;
    
    /**
     * 证书状态：0-无效，1-有效，2-已过期
     */
    private Integer certificateStatus;
    
    /**
     * 证书附件，JSON格式
     */
    private String certificateAttachments;

}
